package Algorithm;

/**
 * @author gthang
 * @description:链接：https://www.nowcoder.com/questionTerminal/8c82a5b80378478f9484d87d1c5f12a4?f=discussion
 * 来源：牛客网
 *
 * 一只青蛙一次可以跳上1级台阶，也可以跳上2级。求该青蛙跳上一个 n 级的台阶总共有多少种跳法（先后次序不同算不同的结果）。
 *
 * 数据范围：1 \leq n \leq 401≤n≤40
 * 要求：时间复杂度：O(n)O(n) ，空间复杂度： O(1)O(1)
 * 示例1
 * 输入
 * 2
 * 输出
 * 2
 */
public class NC68 {
    public class Solution {
        public int jumpFloor(int target) {
            if(target < 0){
                return -1;
            }else if(target == 1){
                return 1;
            }else if(target == 2){
                return 2;
            }else if(target > 2){
                return jumpFloor(target -1) + jumpFloor(target - 2);
            }
            return 0;
        }
    }
}
